<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8" />
  <title>Template struct | My Project</title>
  <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Source+Sans+Pro:400,400i,600,600i%7CSource+Code+Pro:400,400i,600" />
  <link rel="stylesheet" href="m-dark+documentation.compiled.css" />
  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
</head>
<body>
<header><nav id="navigation">
  <div class="m-container">
    <div class="m-row">
      <a href="index.html" id="m-navbar-brand" class="m-col-t-8 m-col-m-none m-left-m">My Project</a>
    </div>
  </div>
</nav></header>
<main><article>
  <div class="m-container m-container-inflatable">
    <div class="m-row">
      <div class="m-col-l-10 m-push-l-1">
        <h1>
          <div class="m-doc-include m-code m-inverted m-right-m m-text-right"><span class="cp">#include</span> <a class="cpf" href="File_8h.html">&lt;File.h&gt;</a></div>
          <div class="m-doc-template">template&lt;class T, class U = void, class UndocumentedTemplate = int, class = int&gt;</div>
          Template <span class="m-thin">struct</span>
        </h1>
        <p>Class with template parameters.</p>
        <table class="m-table m-fullwidth m-flat">
          <thead>
            <tr><th colspan="2">Template parameters</th></tr>
          </thead>
          <tbody>
            <tr>
              <td style="width: 1%">T</td>
              <td>Template parameter T</td>
            </tr>
            <tr>
              <td>U</td>
              <td>Template parameter U</td>
            </tr>
          </tbody>
        </table>
        <nav class="m-block m-default">
          <h3>Contents</h3>
          <ul>
            <li>
              Reference
              <ul>
                <li><a href="#pub-methods">Public functions</a></li>
                <li><a href="#pro-types">Protected types</a></li>
                <li><a href="#pro-methods">Protected functions</a></li>
                <li><a href="#pro-attribs">Protected variables</a></li>
              </ul>
            </li>
          </ul>
        </nav>
<p>Should have it displayed on top. The <code>UndocumentedTemplate</code> shouldn&#x27;t appear in the template detailed description.</p>
        <section id="pub-methods">
          <h2><a href="#pub-methods">Public functions</a></h2>
          <dl class="m-doc">
            <dt>
              <span class="m-doc-wrap-bumper">void <a href="#aeac0ea182b5e51c994538906b4f6a157" class="m-doc">bar</a>(</span><span class="m-doc-wrap">)</span>
            </dt>
            <dd>Another.</dd>
          </dl>
        </section>
        <section id="pro-types">
          <h2><a href="#pro-types">Protected types</a></h2>
          <dl class="m-doc">
            <dt>
              <span class="m-doc-wrap-bumper">enum <a href="#a78bd618022079b3efbf1db104e058c8a" class="m-doc">Bar</a> { </span><span class="m-doc-wrap"> }</span>
            </dt>
            <dd>Enum.</dd>
            <dt>
              using <a href="#ad01711856b91cdd6482f80053b12ed88" class="m-doc">B</a> = A
            </dt>
            <dd>Typedef.</dd>
            <dt>
              using <a href="#a4861d00c5d508390f83329a12342a1e9" class="m-doc">Foo</a> = Buuu&lt;U, false&gt;
            </dt>
            <dd>Template alias.</dd>
          </dl>
        </section>
        <section id="pro-methods">
          <h2><a href="#pro-methods">Protected functions</a></h2>
          <dl class="m-doc">
            <dt>
              <div class="m-doc-template">template&lt;class V, int = 3&gt;</div>
              <span class="m-doc-wrap-bumper">void <a href="#a3b5c01513828df8fdec0eb1783c08d24" class="m-doc">foo</a>(</span><span class="m-doc-wrap">)</span>
            </dt>
            <dd>Function.</dd>
          </dl>
        </section>
        <section id="pro-attribs">
          <h2><a href="#pro-attribs">Protected variables</a></h2>
          <dl class="m-doc">
            <dt>
              int <a href="#a25e95a959521c412c4231453e5fec43a" class="m-doc">a</a>
            </dt>
            <dd>Variable.</dd>
          </dl>
        </section>
        <section>
          <h2>Enum documentation</h2>
          <section class="m-doc-details" id="a78bd618022079b3efbf1db104e058c8a"><div>
            <h3>
              <div class="m-doc-template">
                template&lt;class T, class U, class UndocumentedTemplate, class _4&gt;
              </div>
              enum Template&lt;T, U, UndocumentedTemplate, _4&gt;::<wbr /><a href="#a78bd618022079b3efbf1db104e058c8a" class="m-doc-self">Bar</a> <span class="m-label m-warning">protected</span>
            </h3>
            <p>Enum.</p>
<p>Should have just one template with _3 for unnamed parameter. Should also have the <code>protected</code> label in the details.</p>
          </div></section>
        </section>
        <section>
          <h2>Typedef documentation</h2>
          <section class="m-doc-details" id="ad01711856b91cdd6482f80053b12ed88"><div>
            <h3>
              <div class="m-doc-template">
                template&lt;class T, class U, class UndocumentedTemplate, class _4&gt;
              </div>
              typedef A Template&lt;T, U, UndocumentedTemplate, _4&gt;::<wbr /><a href="#ad01711856b91cdd6482f80053b12ed88" class="m-doc-self">B</a> <span class="m-label m-warning">protected</span>
            </h3>
            <p>Typedef.</p>
<p>Should have just one template with _3 for unnamed parameter. Should also have the <code>protected</code> label in the details.</p>
          </div></section>
          <section class="m-doc-details" id="a4861d00c5d508390f83329a12342a1e9"><div>
            <h3>
              <div class="m-doc-template">
                template&lt;class T, class U, class UndocumentedTemplate, class _4&gt;
              </div>
              using Template&lt;T, U, UndocumentedTemplate, _4&gt;::<wbr /><a href="#a4861d00c5d508390f83329a12342a1e9" class="m-doc-self">Foo</a> = Buuu&lt;U, false&gt; <span class="m-label m-warning">protected</span>
            </h3>
            <p>Template alias.</p>
<p>Should have just one template with _3 for unnamed parameter. Should also have the <code>protected</code> label in the details. Template parameters are tested in <code>cpp_template_aliases</code> test as they need newer Doxygen.</p>
          </div></section>
        </section>
        <section>
          <h2>Function documentation</h2>
          <section class="m-doc-details" id="aeac0ea182b5e51c994538906b4f6a157"><div>
            <h3>
              <div class="m-doc-template">
                template&lt;class T, class U, class UndocumentedTemplate, class _4&gt;
              </div>
              <span class="m-doc-wrap-bumper">void Template&lt;T, U, UndocumentedTemplate, _4&gt;::<wbr /></span><span class="m-doc-wrap"><span class="m-doc-wrap-bumper"><a href="#aeac0ea182b5e51c994538906b4f6a157" class="m-doc-self">bar</a>(</span><span class="m-doc-wrap">)</span></span>
            </h3>
            <p>Another.</p>
<p>Should have just one template with _3 for unnamed parameter.</p>
          </div></section>
          <section class="m-doc-details" id="a3b5c01513828df8fdec0eb1783c08d24"><div>
            <h3>
              <div class="m-doc-template">
                template&lt;class T, class U, class UndocumentedTemplate, class _4&gt;
                template&lt;class V, int = 3&gt;
              </div>
              <span class="m-doc-wrap-bumper">void Template&lt;T, U, UndocumentedTemplate, _4&gt;::<wbr /></span><span class="m-doc-wrap"><span class="m-doc-wrap-bumper"><a href="#a3b5c01513828df8fdec0eb1783c08d24" class="m-doc-self">foo</a>(</span><span class="m-doc-wrap">) <span class="m-label m-warning">protected</span></span></span>
            </h3>
            <p>Function.</p>
            <table class="m-table m-fullwidth m-flat">
              <thead>
                <tr><th colspan="2">Template parameters</th></tr>
              </thead>
              <tbody>
                <tr>
                  <td style="width: 1%">V</td>
                  <td>Well, this is V</td>
                </tr>
              </tbody>
            </table>
<p>Should not repeat default parameter from class, should include both U and V in the docs. Should also have the <code>protected</code> label in the details.</p>
          </div></section>
        </section>
        <section>
          <h2>Variable documentation</h2>
          <section class="m-doc-details" id="a25e95a959521c412c4231453e5fec43a"><div>
            <h3>
              <div class="m-doc-template">
                template&lt;class T, class U, class UndocumentedTemplate, class _4&gt;
              </div>
              int Template&lt;T, U, UndocumentedTemplate, _4&gt;::<wbr /><a href="#a25e95a959521c412c4231453e5fec43a" class="m-doc-self">a</a> <span class="m-label m-warning">protected</span>
            </h3>
            <p>Variable.</p>
<p>Should have just one template with _3 for unnamed parameter. Should also have the <code>protected</code> label in the details.</p>
          </div></section>
        </section>
      </div>
    </div>
  </div>
</article></main>
</body>
</html>
